# Fill in GM= with GM installation directory, e.g. GM=/opt/gm
GM=/opt/gm


GMLIB=$(GM)/lib
GMINC=$(GM)/include
LIBLDIAG=../libldiag

CFLAGS=-Wall -Werror -I$(GMINC) -I$(LIBLDIAG) -g
LDFLAGS_NOGM=-L$(LIBLDIAG) -lldiag
LDFLAGS=-L$(LIBLDIAG) -lldiag -L$(GMLIB) -lgm

EXES=wirelist link_test poke watch_switches xecho 

all: $(EXES)

poke: poke.o
	cc -o poke poke.o ${LDFLAGS}

qstest: query_switch.o qstest.o
	cc -o qstest qstest.o query_switch.o ${LDFLAGS}

LINKTEST_OBJ=link_test.o load_map.o gmstuff.o check_links.o  \
  map_stuff.o symbols.o

XECHO_OBJ=xecho.o gmstuff.o

WIRELIST_OBJ=wirelist.o load_map.o gmstuff.o check_links.o query_switch.o \
  xbar_xref.o map_stuff.o symbols.o

SUBMAP_OBJ=submap.o load_map.o symbols.o

WATCH_SWITCHES_OBJ=watch_switches.o query_switch.o symbols.o

link_test: $(LINKTEST_OBJ)
	cc -o $@ $(LINKTEST_OBJ) ${LDFLAGS}

wirelist: $(WIRELIST_OBJ)
	cc -o $@ $(WIRELIST_OBJ) ${LDFLAGS}

watch_switches: $(WATCH_SWITCHES_OBJ)
	cc -o $@ $(WATCH_SWITCHES_OBJ) ${LDFLAGS_NOGM}

xecho: $(XECHO_OBJ)
	cc -o $@ $(XECHO_OBJ) ${LDFLAGS}


clean:
	rm -f *.o $(EXES)
